package com.ssy.lingxi.platform.manage.service;

import com.ssy.lingxi.common.response.PageData;
import com.ssy.lingxi.common.response.Wrapper;
import com.ssy.lingxi.platform.manage.model.request.appversion.AppVersionAddReq;
import com.ssy.lingxi.platform.manage.model.request.appversion.AppVersionPageReq;
import com.ssy.lingxi.platform.manage.model.request.appversion.AppVersionUpdateReq;
import com.ssy.lingxi.platform.manage.model.request.common.CommonIdRequest;
import com.ssy.lingxi.platform.manage.model.response.AppVersionManagerRes;
import com.ssy.lingxi.platform.manage.model.response.NewVersionRes;

/**
 * @menu 平台后台-系统管理-APP版本管理相关接口
 * @author wyx
 * @version 2.0.0
 * @date 2021-11-12
 */
public interface IAppVersionManagerService {
    /**
     * 新增版本
     * @param req 请求参数
     * @return 操作结果
     */
    Wrapper<Void> add(AppVersionAddReq req);

    /**
     * 修改版本
     * @param req 请求参数
     * @return 操作结果
     */
    Wrapper<Void> update(AppVersionUpdateReq req);

    /**
     * 查看版本
     * @param req 请求参数
     * @return 返回结果
     */
    Wrapper<AppVersionManagerRes> find(CommonIdRequest req);

    /**
     * 分页查看版本列表
     * @param req 请求参数
     * @return 返回结果
     */
    Wrapper<PageData<AppVersionManagerRes>> page(AppVersionPageReq req);

    /**
     * APP端 - 查看最新版本号
     * @return 返回结果
     */
    Wrapper<NewVersionRes> findNewVersion();
}
